#include <iostream>

typedef int arr[2];

int a[2] = {1,2};
int (*add(int i))[2]
{
    a[0] = 1 + i;
    a[1] = 2 + i;

    return &a;
}

arr* add2(int i)
{
    a[0] = 1 + i;
    a[2] = 2 + i;

    return &a;
}

int main()
{
    int (*res)[2] = add(1);

    for(int i = 0 ; i < 2; i++)
    {
        std::cout << *(*res+i) << std::endl;
    }

    int (*res1)[2] = add2(1);
    for(int i = 0; i < 2; i++)
    {
        std::cout << *(*res1+i) << std::endl;
    }


    return 0;
}
